import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui';
import '@/assets/css/common.less';
import '@/assets/css/variable.less';
import '@/assets/css/theme/459f75/index.css';
import '@/assets/icon/font_fmfsczc75jw/iconfont.css';

import axios from 'axios';
import echarts from 'echarts';
require('./mock');

Vue.config.productionTip = false;
Vue.use(ElementUI, {size: 'medium'});
// axios不能使用use
Vue.prototype.$axios = axios;
Vue.prototype.$echarts = echarts;

axios.defaults.baseURL = 'http://127.0.0.1:8081/es/'
axios.defaults.headers.post['Content-Type'] = 'application/json;charset=UTF-8';

// 使用router.beforeEach注册一个全局前置守卫，对路由进行权限跳转
router.beforeEach((to, from, next) => {

  // 未匹配到路由时 跳转到首页页面
  if (0 === to.matched.length) {

    next('/index');
    return false;
  }

  const role = localStorage.getItem('username');
  if (!role && to.path !== '/login') {

    next('/login');
  } else if (to.meta.permission) {

    //模拟管理员权限而已
    role === 'admin' ? next() : next('/index');
  } else {

    // 简单的判断IE10及以下不进入富文本编辑器，该组件不兼容
    if(navigator.userAgent.indexOf('MSIE') > -1 && to.path === '/editor') {

      Vue.prototype.$alert('vue-quill-editor组件不兼容IE10及以下浏览器，请使用更高版本的浏览器查看', '浏览器不兼容通知', {
        confirmButtonText: '确定'
      });
    } else {

      next();
    }
  }
});

new Vue({
  el: '#app',
  router,
  components: {App},
  template: '<App/>'
});
